package design.pattern.Lu21InterpreterPattern;

import java.util.Stack;

/**
 * @program JavaBase
 * @description:
 * @author: zhanglu
 * @create: 2020-05-19 19:36:00
 */
public class InterpreterPattern02 {

    public static void main(String[] args) {
//        Context ctx = new Context();
//        //定义一个语法容器，队列之类的东东
//        Stack<Expression02> stack = null;
//        //进行语法判断，递归调用
//        for (int i = 0; i < 10; i++) {
//
//        }
//        //产生一个完整的语法树，由各个具体的语法分析进行解析
//        Expression02 expression02 = stack.pop();
//        //具体元素进入场景
//        expression02.interpreter(ctx);


        System.out.println("[{\"ErrorCode\":0,\"ErrorDescription\":\"10000305162016249297\"}]".length());

    }

}
//抽象表达式
abstract class Expression02{
    abstract Object interpreter(Context ctx);
}
//终结符表达式
class TerminalExpression extends Expression02{

    @Override
    Object interpreter(Context ctx) {
        return null;
    }
}
//非终结符表达式
class NonterminalExpression extends Expression02{

    @Override
    Object interpreter(Context ctx) {
        return null;
    }
}
//环境角色
class Context{

}

